
using System;
using System.Drawing;
using System.Runtime.InteropServices;
using MonoTouch.CoreFoundation;
using MonoTouch.Foundation;
using MonoTouch.ObjCRuntime;
using MonoTouch.CoreAnimation;
using MonoTouch.CoreLocation;
using MonoTouch.MapKit;
using MonoTouch.UIKit;
using MonoTouch.CoreGraphics;

namespace Tapku
{

	public partial class TKMapPlace : MKAnnotation
	{
		static Selector selCoordinate = new Selector ("coordinate");
				
		public override MonoTouch.CoreLocation.CLLocationCoordinate2D Coordinate {
			[Export ("coordinate")]
			get {
				CLLocationCoordinate2D result = new CLLocationCoordinate2D(0, 0);
				
				if (IsDirectBinding) {
					MonoTouch.ObjCRuntime.Messaging.CLLocationCoordinate2D_objc_msgSend_stret(out result, this.Handle, selCoordinate.Handle);
				} else {
					MonoTouch.ObjCRuntime.Messaging.CLLocationCoordinate2D_objc_msgSendSuper_stret(out result, this.SuperHandle, selCoordinate.Handle);
				}
						
				return result;
			}
			
			
		}
		
		[Export ("setCoordinate:")]
		public void SetCoordinate(CLLocationCoordinate2D locCoord)
		{
			if (IsDirectBinding) {
				MonoTouch.ObjCRuntime.Messaging.void_objc_msgSend_CLLocationCoordinate2D(this.Handle, selCoordinate.Handle, locCoord);
			} else {
				MonoTouch.ObjCRuntime.Messaging.void_objc_msgSendSuper_CLLocationCoordinate2D(this.SuperHandle, selCoordinate.Handle, locCoord);
			}
		}

	}
}
